<?php

namespace App\Kuafu\Order\Service;


class OrderPostData
{
    /**
     * @var string 订单 ID
     */
    private string $orderId = '';

    /**
     * @var array 订单详情
     */
    private array $detail = [];

    /**
     * @var int 订单来源
     */
    private int $sourceType = 0;

    /**
     * @var array 用户 优惠券列表
     */
    private array $userCouponList = [];

    /**
     * @var string 订单备注
     */
    private string $remark = '';

    /**
     * @var array 传入的订单总价
     */
    private array $totalPrice = [];

    /**
     * @var array 传入的订单折扣/优惠券
     */
    private array $discount = [];

    /**
     * @var array 传入的三方优惠券
     */
    private array $extCoupon = [];

    /**
     * @var array 传入的需要退的三方优惠券
     */
    private array $refundCoupon = [];

    /**
     * @var array POS 端传入的优惠券列表
     */
    private array $posCouponList = [];

    /**
     * @return string
     */
    public function getOrderId(): string
    {
        return $this->orderId;
    }

    /**
     * @param string $orderId
     */
    public function setOrderId(string $orderId): void
    {
        $this->orderId = $orderId;
    }

    /**
     * @return array
     */
    public function getDetail(): array
    {
        return $this->detail;
    }

    /**
     * @param array $detail
     */
    public function setDetail(array $detail): void
    {
        $this->detail = $detail;
    }

    /**
     * @return int
     */
    public function getSourceType(): int
    {
        return $this->sourceType;
    }

    /**
     * @param int $sourceType
     */
    public function setSourceType(int $sourceType): void
    {
        $this->sourceType = $sourceType;
    }

    /**
     * @return array
     */
    public function getUserCouponList(): array
    {
        return $this->userCouponList;
    }

    /**
     * @param array $userCouponList
     */
    public function setUserCouponList(array $userCouponList): void
    {
        $this->userCouponList = $userCouponList;
    }

    /**
     * @return string
     */
    public function getRemark(): string
    {
        return $this->remark;
    }

    /**
     * @param string $remark
     */
    public function setRemark(string $remark): void
    {
        $this->remark = $remark;
    }

    /**
     * @return array
     */
    public function getTotalPrice(): array
    {
        return $this->totalPrice;
    }

    /**
     * @param array $totalPrice
     */
    public function setTotalPrice(array $totalPrice): void
    {
        $this->totalPrice = $totalPrice;
    }

    /**
     * @return array
     */
    public function getDiscount(): array
    {
        return $this->discount;
    }

    /**
     * @param array $discount
     */
    public function setDiscount(array $discount): void
    {
        $this->discount = $discount;
    }

    /**
     * @return array
     */
    public function getExtCoupon(): array
    {
        return $this->extCoupon;
    }

    /**
     * @param array $extCoupon
     */
    public function setExtCoupon(array $extCoupon): void
    {
        $this->extCoupon = $extCoupon;
    }

    /**
     * @return array
     */
    public function getRefundCoupon(): array
    {
        return $this->refundCoupon;
    }

    /**
     * @param array $refundCoupon
     */
    public function setRefundCoupon(array $refundCoupon): void
    {
        $this->refundCoupon = $refundCoupon;
    }

    /**
     * @return array
     */
    public function getPosCouponList(): array
    {
        return $this->posCouponList;
    }

    /**
     * @param array $posCouponList
     */
    public function setPosCouponList(array $posCouponList): void
    {
        $this->posCouponList = $posCouponList;
    }
}
